Class SearchChainRegistry

java.lang.Object
com.yahoo.component.provider.ComponentRegistry<com.yahoo.component.chain.Chain<T>>
com.yahoo.processing.execution.chain.ChainRegistry<Searcher>
com.yahoo.search.searchchain.SearchChainRegistry

public class SearchChainRegistry extends com.yahoo.processing.execution.chain.ChainRegistry<Searcher>
Contains a reference to all currently known search chains. Searchers can be fetched from this from multiple threads.

A registry can exist in two states:

Registries start in the first state, moves to the second on calling freeze and stays in that state for the rest of their lifetime.
Author:
bratseth
  • Constructor Details

    • SearchChainRegistry

      public SearchChainRegistry()
    • SearchChainRegistry

      public SearchChainRegistry(com.yahoo.component.provider.ComponentRegistry<? extends com.yahoo.component.AbstractComponent> allComponentRegistry)
  • Method Details

    • freeze

      public void freeze()
      Overrides:
      freeze in class com.yahoo.component.provider.ComponentRegistry<com.yahoo.component.chain.Chain<Searcher>>
    • register

      public void register(com.yahoo.component.chain.Chain<Searcher> component)
    • unregister

      public com.yahoo.component.chain.Chain<Searcher> unregister(com.yahoo.component.chain.Chain<Searcher> component)
    • getSearcherRegistry

      public SearcherRegistry getSearcherRegistry()
    • getComponent

      public SearchChain getComponent(com.yahoo.component.ComponentId id)
      Overrides:
      getComponent in class com.yahoo.component.provider.ComponentRegistry<com.yahoo.component.chain.Chain<Searcher>>
    • getComponent

      public SearchChain getComponent(com.yahoo.component.ComponentSpecification specification)
      Overrides:
      getComponent in class com.yahoo.component.provider.ComponentRegistry<com.yahoo.component.chain.Chain<Searcher>>
    • getChain

      public final com.yahoo.component.chain.Chain<Searcher> getChain(String componentSpecification)
    • getChain

      public final com.yahoo.component.chain.Chain<Searcher> getChain(com.yahoo.component.ComponentId id)
    • getComponent

      public SearchChain getComponent(String componentSpecification)
      Overrides:
      getComponent in class com.yahoo.component.provider.ComponentRegistry<com.yahoo.component.chain.Chain<Searcher>>