org.hibernate.search.indexes.impl

## Class IndexManagerHolder

- java.lang.Object
- - org.hibernate.search.indexes.impl.IndexManagerHolder

-     public class IndexManagerHolder
      extends Object

  Stores references to `IndexManager` instances, and starts or stops them. Starting `IndexManager`s happens by creating new `EntityIndexBinding` instances. `IndexManager`s are started successively as they are needed (for example based on the sharding strategy). Stopping `IndexManager`s can currently only happen all at once.
  Author:
    Emmanuel Bernard, Sylvain Vieujot, Hardy Ferentschik, Sanne Grinovero

- - ### Constructor Summary

    Constructors
    Constructor and Description
    `IndexManagerHolder()`

  - ### Method Summary

    All Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `MutableEntityIndexBinding` | `buildEntityIndexBinding(org.hibernate.annotations.common.reflection.XClass entity, IndexedTypeIdentifier mappedClassId, SearchConfiguration cfg, WorkerBuildContext buildContext)`
    `BackendQueueProcessor` | `getBackendQueueProcessor(String indexName)`
    `IndexManagerGroupHolder` | `getGroupHolderByIndexManager(IndexManager indexManager)`
    `IndexManager` | `getIndexManager(String targetIndexName)`
    `Collection<IndexManager>` | `getIndexManagers()`
    `IndexManagerType` | `getIndexManagerType(String indexName, Properties[] indexProperties, SearchConfiguration cfg, WorkerBuildContext buildContext)`
    `Collection<IndexManagerType>` | `getIndexManagerTypes()`
    `void` | `setActiveSearchIntegrator(ExtendedSearchIntegrator integrator)` Useful for MutableSearchFactory, this haves all managed IndexManagers switch over to the new SearchIntegrator.
    `void` | `stop()` Stops all IndexManager instances

    - ### Methods inherited from class java.lang.Object

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

- - ### Constructor Detail

    - #### IndexManagerHolder

          public IndexManagerHolder()

  - ### Method Detail

    - #### buildEntityIndexBinding

          public MutableEntityIndexBinding buildEntityIndexBinding(org.hibernate.annotations.common.reflection.XClass entity,
                                                                   IndexedTypeIdentifier mappedClassId,
                                                                   SearchConfiguration cfg,
                                                                   WorkerBuildContext buildContext)

    - #### getIndexManagers

          public Collection<IndexManager> getIndexManagers()

      Returns:
        all IndexManager instances

    - #### setActiveSearchIntegrator

          public void setActiveSearchIntegrator(ExtendedSearchIntegrator integrator)

      Useful for MutableSearchFactory, this haves all managed IndexManagers switch over to the new SearchIntegrator.
      Parameters:
        `integrator` - the new SearchIntegrator to set on each IndexManager.

    - #### stop

          public void stop()

      Stops all IndexManager instances

    - #### getIndexManager

          public IndexManager getIndexManager(String targetIndexName)

      Parameters:
        `targetIndexName` - the name of the IndexManager to look up
      Returns:
        the IndexManager, or null if it doesn't exist

    - #### getBackendQueueProcessor

          public BackendQueueProcessor getBackendQueueProcessor(String indexName)

    - #### getGroupHolderByIndexManager

          public IndexManagerGroupHolder getGroupHolderByIndexManager(IndexManager indexManager)

    - #### getIndexManagerType

          public IndexManagerType getIndexManagerType(String indexName,
                                                      Properties[] indexProperties,
                                                      SearchConfiguration cfg,
                                                      WorkerBuildContext buildContext)

    - #### getIndexManagerTypes

          public Collection<IndexManagerType> getIndexManagerTypes()

Copyright © 2006-2017 Red Hat, Inc. All Rights Reserved