public class ImmutableSearchFactory extends Object implements SearchFactoryImplementorWithShareableState, WorkerBuildContext
MutableSearchFactory| Constructor and Description |
|---|
ImmutableSearchFactory(SearchFactoryState state) |
| Modifier and Type | Method and Description |
|---|---|
void |
addClasses(Class<?>... classes)
Add the following classes to the SearchFactory.
|
QueryContextBuilder |
buildQueryBuilder() |
void |
close() |
HSQuery |
createHSQuery()
Return an Hibernate Search query object.
|
IndexManagerHolder |
getAllIndexesManager() |
org.apache.lucene.analysis.Analyzer |
getAnalyzer(Class<?> clazz)
Retrieves the scoped analyzer for a given class.
|
org.apache.lucene.analysis.Analyzer |
getAnalyzer(String name)
Retrieve an analyzer instance by its definition name
|
Map<String,org.apache.lucene.analysis.Analyzer> |
getAnalyzers() |
int |
getCacheBitResultsSize() |
Properties |
getConfigurationProperties() |
TimeoutExceptionFactory |
getDefaultTimeoutExceptionFactory() |
<T> DocumentBuilderContainedEntity<T> |
getDocumentBuilderContainedEntity(Class<T> entityType) |
Map<Class<?>,DocumentBuilderContainedEntity<?>> |
getDocumentBuildersContainedEntities() |
ErrorHandler |
getErrorHandler()
Used to catch exceptions in all synchronous operations; but default they are logged, the user
can configure alternative error management means.
|
int |
getFilterCacheBitResultsSize() |
FilterCachingStrategy |
getFilterCachingStrategy() |
FilterDef |
getFilterDefinition(String name) |
Map<String,FilterDef> |
getFilterDefinitions() |
EntityIndexBinding |
getIndexBinding(Class<?> entityType)
Returns the entity to index binding for the given type.
|
Map<Class<?>,EntityIndexBinder> |
getIndexBindingForEntity() |
EntityIndexBinder |
getIndexBindingForEntity(Class<?> entityType) |
Map<Class<?>,EntityIndexBinding> |
getIndexBindings()
Returns a map of all known entity index binding (indexed entities) keyed against the indexed type
|
IndexedTypeDescriptor |
getIndexedTypeDescriptor(Class<?> entityType)
Returns a descriptor for the specified entity type describing its indexed state.
|
Set<Class<?>> |
getIndexedTypes()
Returns the set of currently indexed types.
|
Set<Class<?>> |
getIndexedTypesPolymorphic(Class<?>[] classes) |
PolymorphicIndexHierarchy |
getIndexHierarchy() |
String |
getIndexingStrategy()
Returns the configured indexing strategy (event vs manual).
|
IndexManagerFactory |
getIndexManagerFactory() |
IndexManagerHolder |
getIndexManagerHolder() |
IndexReaderAccessor |
getIndexReaderAccessor()
Provides access to the IndexReader API
|
InstanceInitializer |
getInstanceInitializer() |
SearchMapping |
getProgrammaticMapping() |
EntityIndexBinding |
getSafeIndexBindingForEntity(Class<?> entityType) |
ServiceManager |
getServiceManager()
Access the
ServiceManager. |
Statistics |
getStatistics()
Retrieve the statistics instance for this factory.
|
StatisticsImplementor |
getStatisticsImplementor()
Retrieve the statistics implementor instance for this factory.
|
TimingSource |
getTimingSource() |
SearchFactoryImplementor |
getUninitializedSearchFactory()
Returns the
SessionFactoryImplementor instance. |
Worker |
getWorker() |
boolean |
isDirtyChecksEnabled() |
boolean |
isIdProvidedImplicit() |
boolean |
isIndexMetadataComplete() |
boolean |
isJMXEnabled() |
boolean |
isStopped() |
boolean |
isTransactionManagerExpected() |
BatchBackend |
makeBatchBackend(MassIndexerProgressMonitor progressMonitor) |
void |
optimize()
Optimize all indexes
|
void |
optimize(Class entityType)
Optimize the index holding
entityType |
void |
releaseService(Class<? extends ServiceProvider<?>> provider)
Release a service from duty.
|
<T> T |
requestService(Class<? extends ServiceProvider<T>> provider)
Declare the use of a service.
|
public ImmutableSearchFactory(SearchFactoryState state)
public Map<String,FilterDef> getFilterDefinitions()
getFilterDefinitions in interface SearchFactoryStatepublic String getIndexingStrategy()
BuildContextgetIndexingStrategy in interface SearchFactoryImplementorgetIndexingStrategy in interface BuildContextgetIndexingStrategy in interface SearchFactoryStateEnvironment.INDEXING_STRATEGYpublic void close()
close in interface SearchFactoryIntegratorpublic HSQuery createHSQuery()
SearchFactoryIntegratorcreateHSQuery in interface SearchFactoryIntegratorpublic Map<Class<?>,DocumentBuilderContainedEntity<?>> getDocumentBuildersContainedEntities()
getDocumentBuildersContainedEntities in interface SearchFactoryStatepublic Map<Class<?>,EntityIndexBinding> getIndexBindings()
SearchFactoryImplementorgetIndexBindings in interface SearchFactoryImplementorgetIndexBindings in interface SearchFactoryStatepublic Map<Class<?>,EntityIndexBinder> getIndexBindingForEntity()
getIndexBindingForEntity in interface SearchFactoryImplementorgetIndexBindingForEntity in interface SearchFactoryStatepublic EntityIndexBinder getIndexBindingForEntity(Class<?> entityType)
getIndexBindingForEntity in interface SearchFactoryIntegratorpublic EntityIndexBinding getIndexBinding(Class<?> entityType)
SearchFactoryIntegratorgetIndexBinding in interface SearchFactoryIntegratorentityType - the type for which to retrieve the bindingnull is returned for types which are unindexed or
unknown.public <T> DocumentBuilderContainedEntity<T> getDocumentBuilderContainedEntity(Class<T> entityType)
getDocumentBuilderContainedEntity in interface SearchFactoryImplementorpublic void addClasses(Class<?>... classes)
SearchFactoryIntegratoraddClasses in interface SearchFactoryIntegratorpublic Worker getWorker()
getWorker in interface SearchFactoryStategetWorker in interface SearchFactoryIntegratorpublic void optimize()
SearchFactoryoptimize in interface SearchFactorypublic void optimize(Class entityType)
SearchFactoryentityTypeoptimize in interface SearchFactoryentityType - the entity type (index) to optimizepublic org.apache.lucene.analysis.Analyzer getAnalyzer(String name)
SearchFactorygetAnalyzer in interface SearchFactoryname - the name of the analyzerpublic org.apache.lucene.analysis.Analyzer getAnalyzer(Class<?> clazz)
SearchFactorygetAnalyzer in interface SearchFactoryclazz - The class for which to retrieve the analyzer.public QueryContextBuilder buildQueryBuilder()
buildQueryBuilder in interface SearchFactorypublic Statistics getStatistics()
SearchFactorygetStatistics in interface SearchFactorypublic StatisticsImplementor getStatisticsImplementor()
SearchFactoryImplementorgetStatisticsImplementor in interface SearchFactoryImplementorpublic FilterCachingStrategy getFilterCachingStrategy()
getFilterCachingStrategy in interface SearchFactoryImplementorgetFilterCachingStrategy in interface SearchFactoryStatepublic Map<String,org.apache.lucene.analysis.Analyzer> getAnalyzers()
getAnalyzers in interface SearchFactoryStatepublic int getCacheBitResultsSize()
getCacheBitResultsSize in interface SearchFactoryStatepublic Properties getConfigurationProperties()
getConfigurationProperties in interface SearchFactoryStatepublic FilterDef getFilterDefinition(String name)
getFilterDefinition in interface SearchFactoryImplementorpublic <T> T requestService(Class<? extends ServiceProvider<T>> provider)
BuildContextrequestService in interface BuildContextT - class of the serviceprovider - of the servicepublic void releaseService(Class<? extends ServiceProvider<?>> provider)
BuildContextreleaseService in interface BuildContextprovider - of the servicepublic int getFilterCacheBitResultsSize()
getFilterCacheBitResultsSize in interface SearchFactoryImplementorpublic Set<Class<?>> getIndexedTypesPolymorphic(Class<?>[] classes)
getIndexedTypesPolymorphic in interface SearchFactoryImplementorpublic BatchBackend makeBatchBackend(MassIndexerProgressMonitor progressMonitor)
makeBatchBackend in interface SearchFactoryImplementorpublic PolymorphicIndexHierarchy getIndexHierarchy()
getIndexHierarchy in interface SearchFactoryStatepublic ServiceManager getServiceManager()
BuildContextServiceManager.
Clients should keep a reference to the ServiceManager to allow for cleanup, but should not keep a reference
to the BuildContext.getServiceManager in interface BuildContextgetServiceManager in interface SearchFactoryStatepublic SearchFactoryImplementor getUninitializedSearchFactory()
BuildContextSessionFactoryImplementor instance. Do not use until after the initialize and/or start method is
fully executed.
Implementations should not cache values provided by the SessionFactoryImplementor, but rather access them
each time, because the configuration can be dynamically updated and new changes made available.
For example, prefer:
void method() {
int size = sfi.getDirectoryProviders().size();
}
over
void method() {
int size = directoryProviders.size();
}
where directoryProviders is a class variable.getUninitializedSearchFactory in interface BuildContextpublic boolean isJMXEnabled()
isJMXEnabled in interface SearchFactoryImplementorpublic boolean isDirtyChecksEnabled()
isDirtyChecksEnabled in interface SearchFactoryImplementortrue 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.public boolean isStopped()
isStopped in interface SearchFactoryIntegratorpublic boolean isTransactionManagerExpected()
isTransactionManagerExpected in interface SearchFactoryStateisTransactionManagerExpected in interface WorkerBuildContexttrue if a transaction manager is expected, false otherwise.SearchConfiguration.isTransactionManagerExpected()public IndexManagerHolder getAllIndexesManager()
getAllIndexesManager in interface SearchFactoryImplementorgetAllIndexesManager in interface BuildContextgetAllIndexesManager in interface SearchFactoryStateIndexManagerHolder which gives access to all index managers known to this factorypublic IndexManagerHolder getIndexManagerHolder()
getIndexManagerHolder in interface SearchFactoryImplementorIndexManagerHolder which gives access to all index managers known to this factorypublic EntityIndexBinding getSafeIndexBindingForEntity(Class<?> entityType)
public ErrorHandler getErrorHandler()
SearchFactoryIntegratorgetErrorHandler in interface BuildContextgetErrorHandler in interface SearchFactoryStategetErrorHandler in interface SearchFactoryIntegratorpublic IndexReaderAccessor getIndexReaderAccessor()
SearchFactorygetIndexReaderAccessor in interface SearchFactorypublic IndexedTypeDescriptor getIndexedTypeDescriptor(Class<?> entityType)
SearchFactorygetIndexedTypeDescriptor in interface SearchFactoryentityType - the entity for which to retrieve the descriptornull IndexedEntityDescriptor. This method can also be called for non indexed types.
To determine whether the entity is actually indexed IndexedTypeDescriptor.isIndexed() can be used.public Set<Class<?>> getIndexedTypes()
SearchFactorygetIndexedTypes in interface SearchFactorypublic InstanceInitializer getInstanceInitializer()
getInstanceInitializer in interface SearchFactoryImplementorgetInstanceInitializer in interface SearchFactoryStategetInstanceInitializer in interface WorkerBuildContextInstanceInitializer for class/object initialization.public TimeoutExceptionFactory getDefaultTimeoutExceptionFactory()
getDefaultTimeoutExceptionFactory in interface SearchFactoryStategetDefaultTimeoutExceptionFactory in interface SearchFactoryIntegratorpublic TimingSource getTimingSource()
getTimingSource in interface SearchFactoryImplementorgetTimingSource in interface SearchFactoryStatepublic SearchMapping getProgrammaticMapping()
getProgrammaticMapping in interface SearchFactoryStatepublic boolean isIndexMetadataComplete()
isIndexMetadataComplete in interface SearchFactoryStateisIndexMetadataComplete in interface WorkerBuildContexttrue if it is safe to assume that the information we have about
index metadata is accurate. This should be set to false for example if the index
could contain Documents related to types not known to this SearchFactory instance.SearchConfiguration.isIndexMetadataComplete()public boolean isIdProvidedImplicit()
isIdProvidedImplicit in interface SearchFactoryStatepublic IndexManagerFactory getIndexManagerFactory()
getIndexManagerFactory in interface SearchFactoryStateCopyright © 2006–2014 Hibernate. All rights reserved.