Class SearchHandler

java.lang.Object
com.yahoo.jdisc.AbstractResource
com.yahoo.jdisc.handler.AbstractRequestHandler
com.yahoo.container.jdisc.ThreadedRequestHandler
com.yahoo.container.jdisc.ThreadedHttpRequestHandler
com.yahoo.container.jdisc.LoggingRequestHandler
com.yahoo.search.handler.SearchHandler
All Implemented Interfaces:
com.yahoo.container.jdisc.HttpRequestHandler, com.yahoo.jdisc.handler.RequestHandler, com.yahoo.jdisc.SharedResource

public class SearchHandler extends com.yahoo.container.jdisc.LoggingRequestHandler
Handles search request.
Author:
Steinar Knutsen, bratseth
  • Nested Class Summary

    Nested classes/interfaces inherited from class com.yahoo.container.jdisc.LoggingRequestHandler

    com.yahoo.container.jdisc.LoggingRequestHandler.Context

    Nested classes/interfaces inherited from class com.yahoo.container.jdisc.ThreadedHttpRequestHandler

    com.yahoo.container.jdisc.ThreadedHttpRequestHandler.LazyContentChannel

    Nested classes/interfaces inherited from interface com.yahoo.jdisc.SharedResource

    com.yahoo.jdisc.SharedResource.Debug
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final String
     

    Fields inherited from class com.yahoo.container.jdisc.ThreadedHttpRequestHandler

    CONTENT_TYPE

    Fields inherited from class com.yahoo.container.jdisc.ThreadedRequestHandler

    metric

    Fields inherited from interface com.yahoo.jdisc.SharedResource

    DEBUG, SYSTEM_PROPERTY_NAME_DEBUG
  • Constructor Summary

    Constructors
    Constructor
    Description
    SearchHandler(com.yahoo.container.core.ChainsConfig chainsConfig, IndexInfoConfig indexInfo, com.yahoo.container.QrSearchersConfig clusters, com.yahoo.vespa.configdefinition.SpecialtokensConfig specialtokens, com.yahoo.statistics.Statistics statistics, com.yahoo.language.Linguistics linguistics, com.yahoo.jdisc.Metric metric, com.yahoo.component.provider.ComponentRegistry<com.yahoo.processing.rendering.Renderer> renderers, Executor executor, com.yahoo.container.logging.AccessLog accessLog, QueryProfilesConfig queryProfileConfig, com.yahoo.component.provider.ComponentRegistry<Searcher> searchers, com.yahoo.container.core.ContainerHttpConfig containerHttpConfig)
    Deprecated.
    use the other constructor
    SearchHandler(com.yahoo.jdisc.Metric metric, com.yahoo.container.handler.threadpool.ContainerThreadPool threadpool, CompiledQueryProfileRegistry queryProfileRegistry, com.yahoo.container.core.ContainerHttpConfig config, com.yahoo.component.provider.ComponentRegistry<com.yahoo.language.process.Embedder> embedders, ExecutionFactory executionFactory, ai.vespa.cloud.ZoneInfo zoneInfo)
     
    SearchHandler(com.yahoo.jdisc.Metric metric, com.yahoo.container.handler.threadpool.ContainerThreadPool threadpool, CompiledQueryProfileRegistry queryProfileRegistry, com.yahoo.container.core.ContainerHttpConfig config, com.yahoo.language.process.Embedder embedder, ExecutionFactory executionFactory)
    Deprecated.
    Use the @Inject annotated constructor instead.
    SearchHandler(com.yahoo.statistics.Statistics statistics, com.yahoo.jdisc.Metric metric, com.yahoo.container.handler.threadpool.ContainerThreadPool threadpool, com.yahoo.container.logging.AccessLog ignored, CompiledQueryProfileRegistry queryProfileRegistry, com.yahoo.container.core.ContainerHttpConfig config, ExecutionFactory executionFactory)
    Deprecated.
    Use the @Inject annotated constructor instead.
    SearchHandler(com.yahoo.statistics.Statistics statistics, com.yahoo.jdisc.Metric metric, com.yahoo.container.handler.threadpool.ContainerThreadPool threadpool, CompiledQueryProfileRegistry queryProfileRegistry, com.yahoo.container.core.ContainerHttpConfig config, com.yahoo.language.process.Embedder embedder, ExecutionFactory executionFactory)
    Deprecated.
    Use the @Inject annotated constructor instead.
    SearchHandler(com.yahoo.statistics.Statistics statistics, com.yahoo.jdisc.Metric metric, Executor executor, com.yahoo.container.logging.AccessLog ignored, CompiledQueryProfileRegistry queryProfileRegistry, com.yahoo.container.core.ContainerHttpConfig containerHttpConfig, ExecutionFactory executionFactory)
    Deprecated.
    Use the @Inject annotated constructor instead.
    SearchHandler(com.yahoo.statistics.Statistics statistics, com.yahoo.jdisc.Metric metric, Executor executor, com.yahoo.container.logging.AccessLog ignored, CompiledQueryProfileRegistry queryProfileRegistry, ExecutionFactory executionFactory, Optional<String> hostResponseHeaderKey)
    Deprecated.
    Use the @Inject annotated constructor instead.
    SearchHandler(com.yahoo.statistics.Statistics statistics, com.yahoo.jdisc.Metric metric, Executor executor, com.yahoo.container.logging.AccessLog ignored, QueryProfilesConfig queryProfileConfig, com.yahoo.container.core.ContainerHttpConfig containerHttpConfig, ExecutionFactory executionFactory)
    Deprecated.
    Use the @Inject annotated constructor instead.
  • Method Summary

    Modifier and Type
    Method
    Description
    void
    createRequestMapping(com.yahoo.slime.Inspector inspector, Map<String,String> map, String parent)
     
    com.yahoo.processing.rendering.Renderer<Result>
    getRendererCopy(com.yahoo.component.ComponentSpecification spec)
    For internal use only
    Optional<com.yahoo.jdisc.Request.RequestType>
     
     
    final com.yahoo.container.jdisc.HttpResponse
    handle(com.yahoo.container.jdisc.HttpRequest request)
     
    com.yahoo.container.jdisc.RequestHandlerSpec
     
    searchAndFill(Query query, com.yahoo.component.chain.Chain<? extends Searcher> searchChain)
    Used from container SDK, for internal use only

    Methods inherited from class com.yahoo.container.jdisc.LoggingRequestHandler

    createLoggingCompletionHandler, testOnlyContext

    Methods inherited from class com.yahoo.container.jdisc.ThreadedHttpRequestHandler

    addDateHeader, asHttpRequest, handle, handleRequest, testContext

    Methods inherited from class com.yahoo.container.jdisc.ThreadedRequestHandler

    executor, getTimeout, handleRequest, writeErrorResponseOnOverload

    Methods inherited from class com.yahoo.jdisc.handler.AbstractRequestHandler

    handleTimeout

    Methods inherited from class com.yahoo.jdisc.AbstractResource

    currentState, destroy, refer, refer, release, retainCount

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface com.yahoo.jdisc.handler.RequestHandler

    handleRequest, handleTimeout

    Methods inherited from interface com.yahoo.jdisc.SharedResource

    refer, refer, release
  • Field Details

  • Constructor Details

    • SearchHandler

      @Inject public SearchHandler(com.yahoo.jdisc.Metric metric, com.yahoo.container.handler.threadpool.ContainerThreadPool threadpool, CompiledQueryProfileRegistry queryProfileRegistry, com.yahoo.container.core.ContainerHttpConfig config, com.yahoo.component.provider.ComponentRegistry<com.yahoo.language.process.Embedder> embedders, ExecutionFactory executionFactory, ai.vespa.cloud.ZoneInfo zoneInfo)
    • SearchHandler

      @Deprecated public SearchHandler(com.yahoo.jdisc.Metric metric, com.yahoo.container.handler.threadpool.ContainerThreadPool threadpool, CompiledQueryProfileRegistry queryProfileRegistry, com.yahoo.container.core.ContainerHttpConfig config, com.yahoo.language.process.Embedder embedder, ExecutionFactory executionFactory)
      Deprecated.
      Use the @Inject annotated constructor instead.
    • SearchHandler

      @Deprecated public SearchHandler(com.yahoo.statistics.Statistics statistics, com.yahoo.jdisc.Metric metric, com.yahoo.container.handler.threadpool.ContainerThreadPool threadpool, CompiledQueryProfileRegistry queryProfileRegistry, com.yahoo.container.core.ContainerHttpConfig config, com.yahoo.language.process.Embedder embedder, ExecutionFactory executionFactory)
      Deprecated.
      Use the @Inject annotated constructor instead.
    • SearchHandler

      @Deprecated public SearchHandler(com.yahoo.statistics.Statistics statistics, com.yahoo.jdisc.Metric metric, com.yahoo.container.handler.threadpool.ContainerThreadPool threadpool, com.yahoo.container.logging.AccessLog ignored, CompiledQueryProfileRegistry queryProfileRegistry, com.yahoo.container.core.ContainerHttpConfig config, ExecutionFactory executionFactory)
      Deprecated.
      Use the @Inject annotated constructor instead.
    • SearchHandler

      @Deprecated public SearchHandler(com.yahoo.statistics.Statistics statistics, com.yahoo.jdisc.Metric metric, Executor executor, com.yahoo.container.logging.AccessLog ignored, CompiledQueryProfileRegistry queryProfileRegistry, com.yahoo.container.core.ContainerHttpConfig containerHttpConfig, ExecutionFactory executionFactory)
      Deprecated.
      Use the @Inject annotated constructor instead.
    • SearchHandler

      @Deprecated public SearchHandler(com.yahoo.statistics.Statistics statistics, com.yahoo.jdisc.Metric metric, Executor executor, com.yahoo.container.logging.AccessLog ignored, QueryProfilesConfig queryProfileConfig, com.yahoo.container.core.ContainerHttpConfig containerHttpConfig, ExecutionFactory executionFactory)
      Deprecated.
      Use the @Inject annotated constructor instead.
    • SearchHandler

      @Deprecated public SearchHandler(com.yahoo.statistics.Statistics statistics, com.yahoo.jdisc.Metric metric, Executor executor, com.yahoo.container.logging.AccessLog ignored, CompiledQueryProfileRegistry queryProfileRegistry, ExecutionFactory executionFactory, Optional<String> hostResponseHeaderKey)
      Deprecated.
      Use the @Inject annotated constructor instead.
    • SearchHandler

      @Deprecated public SearchHandler(com.yahoo.container.core.ChainsConfig chainsConfig, IndexInfoConfig indexInfo, com.yahoo.container.QrSearchersConfig clusters, com.yahoo.vespa.configdefinition.SpecialtokensConfig specialtokens, com.yahoo.statistics.Statistics statistics, com.yahoo.language.Linguistics linguistics, com.yahoo.jdisc.Metric metric, com.yahoo.component.provider.ComponentRegistry<com.yahoo.processing.rendering.Renderer> renderers, Executor executor, com.yahoo.container.logging.AccessLog accessLog, QueryProfilesConfig queryProfileConfig, com.yahoo.component.provider.ComponentRegistry<Searcher> searchers, com.yahoo.container.core.ContainerHttpConfig containerHttpConfig)
      Deprecated.
      use the other constructor
  • Method Details

    • handle

      public final com.yahoo.container.jdisc.HttpResponse handle(com.yahoo.container.jdisc.HttpRequest request)
      Specified by:
      handle in class com.yahoo.container.jdisc.ThreadedHttpRequestHandler
    • getRequestType

      public Optional<com.yahoo.jdisc.Request.RequestType> getRequestType()
      Overrides:
      getRequestType in class com.yahoo.container.jdisc.ThreadedRequestHandler
    • searchAndFill

      public Result searchAndFill(Query query, com.yahoo.component.chain.Chain<? extends Searcher> searchChain)
      Used from container SDK, for internal use only
    • getRendererCopy

      public com.yahoo.processing.rendering.Renderer<Result> getRendererCopy(com.yahoo.component.ComponentSpecification spec)
      For internal use only
    • getSearchChainRegistry

      public SearchChainRegistry getSearchChainRegistry()
    • createRequestMapping

      public void createRequestMapping(com.yahoo.slime.Inspector inspector, Map<String,String> map, String parent)
    • requestHandlerSpec

      public com.yahoo.container.jdisc.RequestHandlerSpec requestHandlerSpec()