org.hibernate.search.engine.integration.impl

## Interface ExtendedSearchIntegrator

- All Superinterfaces:
    AutoCloseable, SearchIntegrator
  All Known Subinterfaces:
    ExtendedSearchIntegratorWithShareableState
  All Known Implementing Classes:
    ImmutableSearchFactory, MutableSearchFactory

      public interface ExtendedSearchIntegrator
      extends SearchIntegrator

  Interface which gives access to runtime configuration. Intended to be used by Search components.
  Author:
    Emmanuel Bernard, Hardy Ferentschik, Sanne Grinovero

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `ScopedAnalyzerReference` | `getAnalyzerReference(IndexedTypeIdentifier type)` Retrieve the scoped analyzer reference for a given indexed type.
    `Properties` | `getConfigurationProperties()`
    `IndexedTypeSet` | `getConfiguredTypesPolymorphic(IndexedTypeSet types)` Given a set of target entities, return the set of configured subtypes.
    `DatabaseRetrievalMethod` | `getDefaultDatabaseRetrievalMethod()` Returns the default `DatabaseRetrievalMethod`.
    `ObjectLookupMethod` | `getDefaultObjectLookupMethod()` Returns the default `ObjectLookupMethod`.
    `DocumentBuilderContainedEntity` | `getDocumentBuilderContainedEntity(IndexedTypeIdentifier entityType)`
    `int` | `getFilterCacheBitResultsSize()`
    `FilterCachingStrategy` | `getFilterCachingStrategy()`
    `FilterDef` | `getFilterDefinition(String name)`
    `IndexedTypeSet` | `getIndexedTypesPolymorphic(IndexedTypeSet types)` Given a set of target entities, return the set of configured subtypes that are indexed.
    `IndexManagerHolder` | `getIndexManagerHolder()`
    `InstanceInitializer` | `getInstanceInitializer()`
    `SearchIntegration` | `getIntegration(IndexManagerType indexManagerType)` Retrieve the integration information for a given index manager type.
    `Map<IndexManagerType,SearchIntegration>` | `getIntegrations()` Returns a map of all known integrations keyed against the indexed manager type
    `StatisticsImplementor` | `getStatisticsImplementor()` Retrieve the statistics implementor instance for this factory.
    `TimingSource` | `getTimingSource()`
    `boolean` | `isDirtyChecksEnabled()`
    `boolean` | `isIndexUninvertingAllowed()`
    `boolean` | `isJMXEnabled()`

    - ### Methods inherited from interface org.hibernate.search.spi.SearchIntegrator

      `addClasses, buildQueryBuilder, close, createHSQuery, createHSQuery, createRemoteOperationDispatcher, getAnalyzer, getAnalyzer, getDefaultTimeoutExceptionFactory, getErrorHandler, getIndexBinding, getIndexBindings, getIndexedTypeDescriptor, getIndexedTypeIdentifiers, getIndexingMode, getIndexManager, getIndexReaderAccessor, getServiceManager, getStatistics, getWorker, getWorkSerializer, isStopped, makeBatchBackend, optimize, optimize, unwrap`

- - ### Method Detail

    - #### getDocumentBuilderContainedEntity

          DocumentBuilderContainedEntity getDocumentBuilderContainedEntity(IndexedTypeIdentifier entityType)

    - #### getFilterCachingStrategy

          FilterCachingStrategy getFilterCachingStrategy()

    - #### getFilterDefinition

          FilterDef getFilterDefinition(String name)

    - #### getFilterCacheBitResultsSize

          int getFilterCacheBitResultsSize()

    - #### getConfiguredTypesPolymorphic

          IndexedTypeSet getConfiguredTypesPolymorphic(IndexedTypeSet types)

      Given a set of target entities, return the set of configured subtypes.

      "Configured" types are types that Hibernate Search was instructed to take into consideration, i.e. types returned by `SearchConfiguration.getClassMappings()`.

      Parameters:
        `types` -
      Returns:
        the set of configured subtypes

    - #### getIndexedTypesPolymorphic

          IndexedTypeSet getIndexedTypesPolymorphic(IndexedTypeSet types)

      Given a set of target entities, return the set of configured subtypes that are indexed.

      "Configured" types are types that Hibernate Search was instructed to take into consideration, i.e. types returned by `SearchConfiguration.getClassMappings()`.

      "Indexed" types are configured types that happened to be annotated with `@Indexed`, or similarly configured through a programmatic mapping.

      Note: the fact that a given type is configured or indexed doesn't mean that its subtypes are, too. Each type must be configured explicitly.

      Parameters:
        `types` - the target set
      Returns:
        the set of configured subtypes that are indexed

    - #### isJMXEnabled

          boolean isJMXEnabled()

      Returns:
        `true` if JMX is enabled

    - #### getStatisticsImplementor

          StatisticsImplementor getStatisticsImplementor()

      Retrieve the statistics implementor instance for this factory.
      Returns:
        The statistics implementor.

    - #### isDirtyChecksEnabled

          boolean isDirtyChecksEnabled()

      Returns:
        `true` if we are allowed to inspect entity state to skip some indexing operations. Can be disabled to get pre-3.4 behavior which always rebuilds the document.

    - #### getIndexManagerHolder

          IndexManagerHolder getIndexManagerHolder()

      Returns:
        Returns the `IndexManagerHolder` which gives access to all index managers known to this factory

    - #### getInstanceInitializer

          InstanceInitializer getInstanceInitializer()

      Returns:
        an instance of `InstanceInitializer` for class/object initialization.

    - #### getTimingSource

          TimingSource getTimingSource()

      Returns:
        the globally configured TimingSource, which we use to implement timeouts during query execution.

    - #### getConfigurationProperties

          Properties getConfigurationProperties()

      Returns:
        the configuration properties for this factory

    - #### getDefaultDatabaseRetrievalMethod

          DatabaseRetrievalMethod getDefaultDatabaseRetrievalMethod()

      Returns the default `DatabaseRetrievalMethod`. This is either the system default or the default specified via the configuration property `Environment.DATABASE_RETRIEVAL_METHOD`.
      Returns:
        returns the default `DatabaseRetrievalMethod`.

    - #### getDefaultObjectLookupMethod

          ObjectLookupMethod getDefaultObjectLookupMethod()

      Returns the default `ObjectLookupMethod`. This is either the system default or the default specified via the configuration property `Environment.OBJECT_LOOKUP_METHOD`.
      Returns:
        returns the default `OBJECT_LOOKUP_METHOD`.

    - #### isIndexUninvertingAllowed

          boolean isIndexUninvertingAllowed()

      Returns:
        whether index uninverting should be done when running queries with sorts not covered by the configured sortable fields. If not allowed, an exception will be raised in this situation.

    - #### getIntegrations

          Map<IndexManagerType,SearchIntegration> getIntegrations()

      Returns a map of all known integrations keyed against the indexed manager type
      Returns:
        a map of all integrations keyed against the indexed manager type. The empty map is returned if there are no indexed types (hence no integrations).

    - #### getIntegration

          SearchIntegration getIntegration(IndexManagerType indexManagerType)

      Retrieve the integration information for a given index manager type.
      Parameters:
        `indexManagerType` - the index manager type for which to retrieve the integration
      Returns:
        The corresponding integration
      Throws:
        `SearchException` - if the index manager type is unknown

    - #### getAnalyzerReference

          ScopedAnalyzerReference getAnalyzerReference(IndexedTypeIdentifier type)

      Retrieve the scoped analyzer reference for a given indexed type.
      Parameters:
        `type` - The type for which to retrieve the analyzer.
      Returns:
        The scoped analyzer for the specified class.
      Throws:
        `IllegalArgumentException` - in case `type == null` or the specified type is not an indexed entity.

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